package com.ruicar.afs.cloud.admin.service;


import com.ruicar.afs.cloud.admin.api.dto.DeptDto;
import com.ruicar.afs.cloud.common.core.security.vo.RoleVo;
import com.ruicar.afs.cloud.common.core.security.vo.UserVo;

import java.util.List;

public interface IOrganizationService {
    UserVo getUserInfoByLoginName(String loginName);
    RoleVo getRoleByCode(String roleCode);
    List<RoleVo> getRolesByLoginName(String loginName);
    List<UserVo> getUsersByVirtualCode(String virtualCode);
    List<UserVo> getUsersByVirtualCodes(List<String> virtualCodes);
    List<UserVo> getUsersByLoginNames(List<String> loginNames);
    List<UserVo> getUsersByRoleCode(String roleCode);
    List<UserVo> getUsersByRoleCodes(List<String> roleCodes);
    List<String> getUserLoginNamesByRoleCodes(List<String> roleCodes);
    List<String> getUserLoginNamesByVirtualCodes(List<String> virtualCodes);
    List<UserVo> getAllUsers();
    List<DeptDto> getDepartment(String param, int startNum, int pageSize);
    long getDepartmentCount(String param) ;
    List<UserVo> getUsersByDepartment(String departmentId);
    List<String> getLoginNamesByDepartmentId(String departmentId) ;
    DeptDto getDepartment(String id);
}
